package jdbc;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
/**jdbc最终版本，最正确写法*/
/**执行查询语句结果集使用 executeQuery() ,返回的是查询到的内容
 * 执行增,删,改 的SQL语句时,使用 executeUpdate() ,返回的是更改的行数*/
public class Demo05 {
    public static void main(String[] args) {
        Connection c = null;
        PreparedStatement p =null;
        try {
            c = Demo03.JDBCutils.get();
            String sql = "insert into dept value(null,?,?)";
            p = c.prepareStatement(sql);
            p.setObject(1,"ava");
            p.setObject(2,"jack");
            p.executeUpdate();
        } catch (Exception e) {
            System.out.println("插入失败");
            e.printStackTrace();
        }finally{
            if (p != null){
                try {
                    p.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }finally {
                    p=null;//防止发生异常导致s没被关闭,手动置空,等着GC垃圾回收了.
                }
            }
            if (c!= null){
                try {
                    c.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }finally {
                    c=null;
                }
            }
        }
    }
}

